The present invention relates generally to multidimensional data processing computers, and more particularly, toward a single instruction, multiple data stream computer, comprising a large number of individual processing elements operating in parallel on multiple data streams in single bit slices, simultaneously and in an identical manner, in response to a single set of instructions stored in a processor array control unit. The massively parallel processor architecture has particular utility to real time processing of image data generated by an image sensor array as a large number of parallel data streams, each corresponding to a picture element (pixel). The architecture is also useful for processing any other ordered, multidimensional array of parallel data.
Conventional digital computers are composed of devices that are programmed to perform logical operations on one dimensional binary signals. These computers, although possible to be adapted to process multidimensional binary signals, are inefficient and slow for that purpose because the multidimensional data must be converted to a single, serial data stream suitable for conventional single dimensional signal processing.
There have been increasing applications in image processing and other spatially oriented computations where, for example, transmission of raw, multidimensional data from satellite based sensors to ground must undergo signal processing such as distortion correction and classification. Thus, there have been increasing requirements for multidimensional data processing computers that are fast enough to operate in real time on two or more dimension data (such as two dimensional imaging data) and compact enough to be carried on board in satellites, missiles or spacecraft.
In response, various types of multidimensional data processors for applications such as image processing have been developed. The prior art includes a two dimensional digital computer that operates on parallel optical signals arranged in an ordered array, including several different types of optical elements to provide direct image processing, such as sliding and interleaving. One embodiment of the computer operates in the optical domain using fiber optics and may be adapted to process electrical binary signals under program control. Also, operations on data are basically logical manipulations and complex operations such as arithmetic computations are executed by multiple-step programs.
Other approaches taken, wherein electrical image signals are processed for arithmetic as well as logical operations have been too complex for on-board utilization. For example, "giant" computers, such as the ILLIAC IV, have been utilized wherein a number of data streams are processed in a smaller number of parallel processors. A substantial portion of the computation time must be devoted, however, to data partitioning, and routing, and is, therefore, impractical.